С++ предоставляет разработчику огромную свободу действий и власть над происходящим в программе. Расплачиваться за это приходится легкостью написания кода, который на много часов отправит программиста в увлекательный мир отладки и анализа crash report'ов; поможет злоумышленникам вмешаться в работу системы или повредит данные пользователя. В своем докладе я рассмотрю наиболее популярные на сегодняшний день уязвимости и ошибки в программах: откуда они берутся и как избежать их появления в коде на C++. Вместе с тем, я рассмотрю различные аспекты безопасного гарантирующего корректность своей работы C++ кода и практические рекомендации по его написанию.
C++ gives too much freedom and power to the engineer who is in charge for the development. It’s easy to write code, but it’s complicated to debug and analyze crash reports. This power may be used by the wrong side: a malefactor may interrupt into your application flow and corrupt user’s data. The talk covers most popular vulnerabilities and errors in the application nowadays: from where they come from and how to get rid of them in C++ code.